package com.shuwen.gcdj.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 权限(t_user_power)实体类
 *
 * @author localhost_ubuntu
 * @since 2021-11-24 21:56:05
 * @description created by mybaits plus code generator
 */
@EqualsAndHashCode(callSuper = true)
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("t_user_power")
public class Power extends Model<Power> implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 权限id
     */
    @TableId(type = IdType.ASSIGN_UUID)
	private String id;
    /**
     * 权限码(控制前端展示+后端接口访问)
     */
    private String code;
    /**
     * 权限名称
     */
    private String name;
    /**
     * 父级权限id
     */
    private String parentId;
    /**
     * 层级，最顶层为1级
     */
    private Integer level;
    /**
     * 排序编号，值越小越靠前
     */
    private Integer sort;

    /**
     * 菜单图标路径
     */
    private String icon;

    /**
     * 菜单路由
     */
    private String routePath;

    /**
     * 是否隐藏 1:隐藏 0:不隐藏
     */
    private Integer isHidden;
    /**
     * 数据范围和信息范围展示类型(多个用','分割) 1:展示信息范围 2:展示数据范围
     */
    private String showType;

    /**
     * 默认信息范围 common:通用 all:所有
     */
    private String defaultInfoType;

    /**
     * 创建者id
     */
    private String createId;
    /**
     * 更新者id
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private String updateId;

    /**
     * 是否为菜单权限 0 否  1  是
     */
    @ApiModelProperty("是否为菜单权限 0 否  1  是")
    private Integer isMenu;
    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
    /**
     * 是否删除 1-删除 0-正常
     */
    private Integer isDelete;
    /**
     * 是否删除 1-删除 0-正常
     */
    private String webId;
    /**
     * 是否删除 1-删除 0-正常
     */
    private String webParentId;

}
